//package com.student.controller;
//
//import com.student.entity.Student;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.data.redis.core.*;
//import org.springframework.web.bind.annotation.*;
//
//import java.util.List;
//import java.util.Set;
//
//@RestController
//@RequestMapping
//public class StudentHandler {
//
//    @Autowired
//    private RedisTemplate redisTemplate;
//
//    @PostMapping("/set")
//    public void set(@RequestBody Student student) {
//        redisTemplate.opsForValue().set("student", student);
//    }
//
//    @GetMapping("/get/{key}")
//    public Student get(@PathVariable("key") String key) {
//        return (Student) redisTemplate.opsForValue().get(key);
//    }
//
//    @DeleteMapping("/delete/{key}")
//    public boolean delete(@PathVariable("key") String key) {
//        redisTemplate.delete(key);
//        return redisTemplate.hasKey(key);
//    }
//
//    @GetMapping("/string")
//    public String stringTest() {
//        redisTemplate.opsForValue().set("str", "hello word");
//        return (String) redisTemplate.opsForValue().get("str");
//    }
//
//    @GetMapping("/list1")
//    public List<String> listTest1() {
//        //插入数据
//        redisTemplate.opsForList().leftPush("list1", "L1");
//        redisTemplate.opsForList().leftPush("list1", "L2");
//        redisTemplate.opsForList().leftPush("list1", "L3");
//        redisTemplate.opsForList().rightPush("list1", "R4");
//        redisTemplate.opsForList().rightPush("list1", "R5");
//        redisTemplate.opsForList().rightPush("list1", "R6");
//
//        //取出数据
//        return redisTemplate.opsForList().range("list1", 0, 5);
//    }
//
//
//    @GetMapping("/list")
//    public List<String> listTest() {
//        ListOperations<String, String> listOperations = redisTemplate.opsForList();
//        listOperations.leftPush("list", "L1");
//        listOperations.leftPush("list", "L2");
//        listOperations.leftPush("list", "L3");
//        listOperations.rightPush("list", "R1");
//        listOperations.rightPush("list", "R2");
//        listOperations.rightPush("list", "R3");
//        List<String> list = listOperations.range("list", 0, 100);
//        return list;
//    }
//
//    //无序集合 数据不重复
//    @GetMapping("/set")
//    public Set<String> setTest() {
//        SetOperations<String, String> setOperations = redisTemplate.opsForSet();
//        setOperations.add("set", "hello");
//        setOperations.add("set", "hello");
//        setOperations.add("set", "java");
//        setOperations.add("set", "java");
//        setOperations.add("set", "world");
//        setOperations.add("set", "world");
//        Set<String> set = setOperations.members("set");
//        return set;
//
//    }
//
//    //有序集合
//    @GetMapping("/ZSet")
//    public Set<String> zSetTest(){
//        ZSetOperations<String,String> zSetOperations = redisTemplate.opsForZSet();
//        zSetOperations.add("zSet","world",2);
//        zSetOperations.add("zSet","hello",1);
//        zSetOperations.add("zSet","java",3);
//        Set<String> zSet = zSetOperations.range("zSet",0,2);
//        return zSet;
//    }
//
//    @GetMapping("/hash")
//    public void hash(){
//        HashOperations<String,String,String> hashOperations = redisTemplate.opsForHash();
//        hashOperations.put("key","hashKey","hello");
//        System.out.println("hashOperations = " + hashOperations.get("key","hashKey"));
//    }
//}
